#include"Comm.hpp"
//#include "Log.hpp"
#include<cstdio>

int main()
{
    int fd=Open(FIFO_FILE,WRITER);
    if(fd<0)
    {
        Log()<<"Open: "<<strerror(errno)<<endl;
        return 2;
    }
    key_t key=CreatKey();
        Log()<<"key: "<<key<<"\n";
        Log() << "create share memory begin\n";
    
    int shmid=shmget(key,MEM_SIZE,IPC_CREAT);
    if(shmid<0)
    {
        Log()<<"shmget: "<<strerror(errno)<<endl;
        return 2;
    }
        Log() << "create shm success, shmid: " << shmid << "\n";
    char* str=(char*)shmat(shmid,nullptr,0);
        Log() << "attach shm : " << shmid << " success\n";
    while(true)
    {
        printf("请输入# ");
        fflush(stdout);
        ssize_t s=read(0,str,MEM_SIZE);
        if(s>0)
        {
            str[s]='\0';
        }
        Signal(fd);
    }

    shmdt(str);
        Log() << "detach shm : " << shmid << " success\n";
    Close(fd,FIFO_FILE);
    return 0;
}
